home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
FM Towns: Free Software Collection 7
/
FM Towns Free Software Collection 7.iso
/
data
/
dora
/
dorauset.plp
< prev
next >
Wrap
Text File
|
1993-11-30
|
35KB
|
1,313 lines
/* テキストファイル作成処理 */
%SHINKI{
%savememo{
footnote({送信用テキストファイルを新規作成します});
mkdir2(TEMP);%file1 @crefile(UP,{res});
CloseAllMemo;mwrite(UP2|file1,memono);file:=UP2|file1;
mopen(memono);mclose(3);im({No})};
%memono @case (@mlast==9,{Yes},{im({9})},{No},{im(@mlast+1)});
footnote({送信用テキストファイルを新規作成します});
CloseAllMemo;
madd(memono,{\n});mclear(memono);mopen(memono,0,21,639,459,{w});
loop ({footnote({終了取消参照清書},{b});waitx();
case (@xtype,
101,{savememo}, 201,{savememo},
102,{cancel}, 202,{cancel},
103,{newmemo}, 203,{newmemo},
104,{rewrite}, 204,{rewrite},
,{im({Yes})});
})};
/* アップ用文書清書 */
%rewrite{
footnote({編集中のメモ内容を清書しています});
CloseAllMemo;
dispoff(!DEBUG);
%cdir @getcdir;
setcdir(CDIR);
command({del }|TEMP2|{_moptext.tmp});
command({del }|TEMP2|{_moptext.new});
mwrite(TEMP2|{_moptext.tmp},memono);
command({txf -f -i }|TEMP2|{_moptext.tmp -o }|TEMP2|{_moptext.new});
dispoff({No});
case (@filechk(TEMP2|{_moptext.new}),
{Yes},
{
mclear(memono);
mread(TEMP2|{_moptext.new},memono);
%memomax @mlast;
var memono1 [2];
memono1:=memono+1;
loop ({
case (memono1<=memomax,
{Yes},
{
case(@mcheck!=0,{Yes},{mclose(1)});
mopen(memono1);
});
memono1:=memono1+1;
im(memono1<=memomax);
});
case (memomax>memono,
{Yes},
{
case(@mcheck!=0,{Yes},{mclose(1)});
mopen(memono,0,21,639,399,{w});
},
{No},
{
case(@mcheck!=0,{Yes},{mclose(1)});
mopen(memono,0,21,639,459,{w});
});
},
{No},
{
display({清書機能には TXF.EXE がパスの通った}|
{ディレクトリに必要です\n});
wait(2);
%memomax @mlast;
var memono1 [1];
memono1:=memono+1;
loop ({
case (memono1<=memomax,
{Yes},
{
case(@mcheck!=0,{Yes},{mclose(1)});
mopen(memono1);
});
memono1:=memono1+1;
im(memono1<=memomax);
});
case (memomax>memono,
{Yes},
{
case(@mcheck!=0,{Yes},{mclose(1)});
mopen(memono,0,21,639,399,{w});
},
{No},
{
case(@mcheck!=0,{Yes},{mclose(1)});
mopen(memono,0,21,639,459,{w});
});
});
setcdir(cdir);
im({Yes});
};
/* アップ文書作成キャンセル */
%cancel{
SNDMSG({kaknin_f.snd});
footnote({作成中の文書を取消しますか?});
select({作成中の文書を取消しますか?},
Wtime4,{footnote({});im({Yes})},
{ は い },
{
CloseAllMemo;delfile(TEMP2|{_mopmemo.bak});
mwrite(TEMP2|{_mopmemo.bak},memono);mopen(memono);
mclose(3);footnote({});im({No})
},
{ いいえ },{footnote({});im({Yes})}
)
};
/* 他のファイルを参照するためにメモを開く */
%newmemo{
case (@mlast==9,
{Yes},
{
footnote({メモ番号が一杯のため、新しいメモが開けません});
wait(2);
},
{No},
{
CloseAllMemo;
mopen(memono,0,21,639,399);
mclose(1);
%memo1 @mlast+1;
madd(memo1,{\n});
mclear(memo1);
%file1 @filesel;
case(file1<>{}&&@filechk(file1),{Yes},{mread(file1,memo1)});
mopen(memo1,0,221,639,459);
});
im({Yes});
};
/* アップロードファイル更新 */
%KOUSHIN{
[file,memono]
%savememo{
footnote({送信用テキストファイルを更新します});
CloseAllMemo;
mwrite(file,memono);im({No});
};
footnote({送信用テキストファイルを更新します});
CloseAllMemo;
madd(memono,{\n});
mclear(memono);
mread(file,memono);
mopen(memono,0,21,639,459,{w});
loop ({
footnote({終了取消参照清書},{b});waitx();
case (@xtype,
101,{savememo}, 201,{savememo},
102,{cancel}, 202,{cancel},
103,{newmemo}, 203,{newmemo},
104,{rewrite}, 204,{rewrite},
,{im({Yes})});
})};
/* アップロードファイル指定 */
%FILEsel1{
var upfile [64];
SNDMSG({erande_f.snd});
upfile:=@filesel;
case (upfile,
{},{im({})},
,{case (@nochar(@getcdir)=3,
{Yes}, {upfile:=@getcdir|upfile},
{No}, {upfile:=@getcdir|{\}|upfile}
);
});
im(upfile);
};
/* アップロードファイル内容確認(テキストファイル) */
%KAKUNIN{
var file1 [64];
var memono [1];
case (@mlast==9,{Yes},{memono:=9},{No},{memono:=@mlast+1});
loop ({
footnote({テキストファイルを選択してください});
file1:=@filesel;
case (file1<>{},
{Yes},
{case (@nochar(@getcdir)==3,
{Yes}, {file1:=@getcdir|file1},
{No}, {file1:=@getcdir|{\}|file1}
);
});
case (file1={}||@filechk(file1)={No},
{Yes},{file1:={}},
{No},
{
footnote({送信用テキストファイルを確認します});
CloseAllMemo;
madd(memono,{\n});
mclear(memono);
mread(file1,memono);
mopen(memono,0,21,639,459,{w});
%a @loop ({
footnote({指定 次 取消},{b});
waitx();
case (@xtype,
101,{im(file1)},
201,{im(file1)},
102,{im({next})},
202,{im({next})},
103,{im({cancel})},
203,{im({cancel})},
,{im({Yes})}
);
});
CloseAllMemo;
case (a,
{next},{im({Yes})},
{cancel},{file1:={};im({No})},
,{im({No})}
);
});
});
loop ({
case(@mlast>=memono,{Yes},{mopen(@mlast);mclose(3)});
im(@mlast>=memono);
});
case(file1<>{},{Yes},{file:=file1});
};
/* アップロードファイル内容確認(NAPLPSファイル) */
%KAKUNIN2{
var file1 [64];
loop ({
footnote({NAPLPSファイルを選択してください});
file1:=@filesel({NPB});
case (file1<>{},
{Yes},
{case (@nochar(@getcdir)==3,
{Yes}, {file1:=@getcdir|file1},
{No}, {file1:=@getcdir|{\}|file1}
);
});
case (file1={}||@filechk(file1)={No},
{Yes},{file1:={}},
{No},
{
footnote({送信用NAPLPSファイルを確認します});
CloseAllMemo;
naplps(file1);
%a @loop ({
footnote({指定 次 取消},{b});
waitx();
case (@xtype,
101,{im(file1)},
201,{im(file1)},
102,{im({next})},
202,{im({next})},
103,{im({cancel})},
203,{im({cancel})},
,{im({Yes})}
);
});
napend;
case (a,
{next},{im({Yes})},
{cancel},{file1:={};im({No})},
,{im({No})}
);
});
});
case(file1<>{},{Yes},{file:=file1});
};
/* ファイルコピー */
%FILECOPY{
footnote({読み込むファイルを選択してください});
setcdir(UP); %file @filesel;
case (file={},
{Yes},{CloseAllMemo},
{No},
{
CloseAllMemo;
madd(memono+1,{\n});
mclear(memono+1);
case(@filechk(file),{Yes},{mread(file,memono+1)});
mopen(memono,0,21,639,240,{r});mclose(1);
mopen(memono+1,0,241,639,459,{r} );
select({このファイル内容を追加してもいいですか?},
Wtime4,{CloseAllMemo},
{ O K },
{
CloseAllMemo;
dispoff(!DEBUG);
command({copy }|TEMP2|{_mopres.wrk + }|file|
{ }|TEMP2|{_mopres.wrk});
dispoff({No});
mclear(memono);
mread(TEMP2|{_mopres.wrk},memono)},
{ N G },{CloseAllMemo}
)})};
/* 手動編集 */
%HANDEDIT{
CloseAllMemo;mopen(memono,0,21,639,459,{w});
loop ({
footnote({終了 取消},{b});waitx();
case (@xtype,
101,
{
CloseAllMemo;
mwrite(TEMP2|{_mopres.wrk},memono);
im({No});
},
201,
{
CloseAllMemo;
mwrite(TEMP2|{_mopres.wrk},memono);
im({No})
},
105,
{
CloseAllMemo;
mclear(memono);
case (@filechk(TEMP2|{_mopres.wrk}),
{Yes},{mread(TEMP2|{_mopres.wrk},memono)}
);
im({No})},
205,
{
CloseAllMemo;
mclear(memono);
case (@filechk(TEMP2|{_mopres.wrk}),
{Yes},
{mread(TEMP2|{_mopres.wrk},memono)}
);
im({No});
},
,{im({Yes})});
})};
/* アップロード制御ファイル新規作成処理 */
%SETUP1 {
loop ({footnote({アップロード先は?});SNDMSG({erande_f.snd});
select ({アップロード先は?},
Wtime4,{im({No})},
{ テキストメール },{AUTOmail;im({Yes})},
{ ボード },{AUTOforum;im({Yes})},
{データライブラリ},{AUTOdlib;im({Yes})},
{シスオペ宛メール},{AUTOsmail;im({Yes})},
{ プロフィール },{AUTOprof;im({Yes})},
{ メモの書き込み },{AUTOwho;im({Yes})},
{ 爆裂自動トーク },{AUTObenon;im({Yes})},
{ 終 了 },{im({No})}
)});
CloseAllMemo;mclear(memono);
case (@filechk(TEMP2|{_mopres.wrk}),
{Yes},{mread(TEMP2|{_mopres.wrk},memono)});
};
%RESERV {
case (reserv,
{ 1},{im({})},
{ 2},{im({保留;})},
,{im({})}
);
};
/* 書き込みメモファイル作成処理 */
%MEMOset{%a @plane({c「Wコマンドで表示される」メモ内容を登録する\n}|
{tメモ内容/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n}|
{s / 登録 / 取消 \n},);
memoK:= @head(@getline(a,1,1),{\n});
mkdir2(TEMP);%file1 @crefile(UP,{res});
write(UP2|file1,memoK);file:=UP2|file1};
/* 書き込みメモアップロードファイル更新処理 */
%MEMOrset{ [text]
memoK:=@read(text);
%a @plane({c「Wコマンドで表示される」メモ内容を登録する\n}|
{tメモ内容/xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx\n}|
{s / 登録 / 取消 \n},memoK);
memoK:= @head(@getline(a,1,1),{\n});
mkdir2(TEMP);%file1 @crefile(UP,{res});
write(UP2|file1,memoK);file:=UP2|file1};
/* 爆裂自動トークアップ制御文作成 */
%AUTObenon{
footnote({爆裂自動トーク送信制御文作成});
var benon[80];
var file[64];
var ok[2];
loop ({SNDMSG({nyuryo_f.snd});
%a @plane( {c爆裂自動トーク送信\n}|
{tトーク先ID /\n}|
{s / 検索 \n}|
{t 爆裂ファイル /\n}|
{s / ファイル一覧/ 新規作成 \n}|
{r 送信予約 /予約 /保留\n}|
{s / 登録 / 取消 \n},
benon,file,1);
benon:= @head(@getline(a,1,1),{\n});
%search @head(@getline(a,2,1),{\n});
file:= @head(@getline(a,3,1),{\n});
%sel @head(@getline(a,4,1),{\n});
%reserv @head(@getline(a,5,1),{\n});
ok:= @head(@getline(a,6,1),{\n});
im({No}); /* 右クリック時のデフォルト値 */
case (search,
{ 1},
{
%id1 @HDsearch;
case (id1<>{},
{Yes},
{
case (benon<>{},
{Yes},{benon:=benon|{,}|id1},
{No},{benon:=id1}
);
});
im({Yes})}
);
case (sel,
{ 1},{KAKUNIN;im({Yes})},
{ 2},{SHINKI;im({Yes})}
);
case (ok,
{ 1},
{case (file={},
{No},
{
case (@getchar(file,2,2)={:\},
{No},{footnote(ERRMSG);im({Yes})},
{Yes},
{write(TEMP2|{_mopres.wrk},@RESERV|
{benon=}|benon|{;}|{file=}|file|{;\n});
im({No});
});
},
{Yes},
{
im({Yes})
});
},
{ 2},{im({No})}
)})};
/* テキストメールアップ制御文作成 */
%AUTOmail{
footnote({テキストメール送信制御文作成});
var mail[40];
var title[40];
var file[64];
var ok[2];
loop ({SNDMSG({nyuryo_f.snd});
%a @plane( {cテキストメール送信\n}|
{t 送信先ID /\n}|
{s / 検索 \n}|
{t タイトル /xxxxxxxxxxxxxxxxxxxx}|
{xxxxxxxxxxxxxxxxxxxx\n}|
{t 送信ファイル /\n}|
{s / ファイル一覧/ 新規作成 \n}|
{r 送信予約 /予約 /保留\n}|
{s / 登録 / 取消 \n},
mail,title,file,1);
mail:= @head(@getline(a,1,1),{\n});
%search @head(@getline(a,2,1),{\n});
title:= @head(@getline(a,3,1),{\n});
file:= @head(@getline(a,4,1),{\n});
%sel @head(@getline(a,5,1),{\n});
%reserv @head(@getline(a,6,1),{\n});
ok:= @head(@getline(a,7,1),{\n});
im({No}); /* 右クリック時のデフォルト値 */
case (search,
{ 1},
{
%id1 @IDsearch;
case (id1<>{},
{Yes},
{
case (mail<>{},
{Yes},{mail:=mail|{,}|id1},
{No},{mail:=id1}
);
});
im({Yes})}
);
case (sel,
{ 1},{KAKUNIN;im({Yes})},
{ 2},{SHINKI;im({Yes})}
);
case (ok,
{ 1},
{case (title={}||file={},
{No},
{
case (@getchar(file,2,2)={:\},
{No},{footnote(ERRMSG);im({Yes})},
{Yes},
{write(TEMP2|{_mopres.wrk},@RESERV|
{mail=}|mail|{;}|{file=}|file|{;}|
{title=}|title|CRLF);
im({No});
});
},
{Yes},
{
im({Yes})
});
},
{ 2},{im({No})}
)})};
/* ボードへの書き込み制御文作成 */
%AUTOforum{
footnote({ボード制御文作成});
var forum[8];
var mes[3];
var reply[4];
var title[40];
var file[64];
var ok[2];
loop ({SNDMSG({nyuryo_f.snd});
%a @plane( {cボードへの新規発言\n}|
{t ネット名 /xxxxxxxx\n}|
{cSIGボードの場合はネット名の代わりに\n}|
{cパスワードを入力して下さい\n}|
{t ボード番号 /xxxxx\n}|
{tコメント元番号/xxx\n}|
{t タイトル /xxxxxxxxxxxxxxxxxxxx}|
{xxxxxxxxxxxxxxxxxxxx\n}|
{t 発言ファイル /\n}|
{s / ファイル一覧 / 新規作成 \n}|
{r 送信予約 /予約 /保留\n}|
{s / 登録 / 取消 \n},
NET,mes,reply,title,file,1);
forum:= @head(@getline(a,1,1),{\n});
mes:= @head(@getline(a,2,1),{\n});
reply:= @head(@getline(a,3,1),{\n});
title:= @head(@getline(a,4,1),{\n});
file:= @head(@getline(a,5,1),{\n});
%sel @head(@getline(a,6,1),{\n});
%reserv @head(@getline(a,7,1),{\n});
ok:= @head(@getline(a,8,1),{\n});
im({No}); /* 右クリック時のデフォルト値 */
case (sel,
{ 1},{KAKUNIN;im({Yes})},
{ 2},{SHINKI;im({Yes})}
);
case (ok,
{ 1},
{
case (@getchar(file,2,2)={:\},
{No},
{footnote(ERRMSG);im({Yes})},
{Yes},
{
write(TEMP2|{_mopres.wrk},@RESERV|
{forum=}|forum|{;}|{mes=}|mes|{;}|
{reply=}|reply|{;}|{file=}|file|{;}|
{title=}|title|CRLF);
im({No})})},
{ 2},{im({No})}
)})};
/* データライブラリ制御文作成 */
%AUTOdlib{
footnote({データライブラリへの登録制御文作成});
var forum[12];
var libno[3];
var dataname[12];
var keyword[80];
var datatype[3];
var dtype[2];
var datafile[64];
var docfile[64];
var file[64];
var ok[2];
loop ({
SNDMSG({nyuryo_f.snd});
%a @plane( {cデータライブラリへの登録\n}|
{t ネット名 /xxxxxxxx\n}|
{cSIGボードの場合はネット名の代わりに\n}|
{cパスワードを入力して下さい\n}|
{tライブラリ番号/xxx\n}|
{t データ名 /xxxxxxxxxxxx\n}|
{t コメント /\n}|
{r データタイプ /バイナリ/テキスト/NAPLPS\n}|
{tデータファイル/\n}|
{s / 選択 \n}|
{t 概要ファイル /\n}|
{s / ファイル一覧/ 新規作成 \n}|
{r 送信予約 /予約 /保留\n}|
{s / 登録 / 取消 \n},
@SCANPW(libno),libno,dataname,keyword,dtype,
datafile,docfile,1);
forum:= @head(@getline(a,1,1),{\n});
libno:= @head(@getline(a,2,1),{\n});
dataname:= @head(@getline(a,3,1),{\n});
keyword:= @head(@getline(a,4,1),{\n});
dtype:= @head(@getline(a,5,1),{\n});
datafile:= @head(@getline(a,6,1),{\n});
%sel1 @head(@getline(a,7,1),{\n});
docfile:= @head(@getline(a,8,1),{\n});
%sel2 @head(@getline(a,9,1),{\n});
%reserv @head(@getline(a,10,1),{\n});
ok:= @head(@getline(a,11,1),{\n});
im({No}); /* 右クリック時のデフォルト値 */
case (sel1,
{ 1},
{
file:=datafile;
case (dtype,
{ 2},{KAKUNIN},
{ 3},{KAKUNIN2},
,{file:=@FILEsel1}
);
datafile:=file;
docfile:=@body(datafile,,{.})|{.ggg};
case(@filechk(docfile),{No},{docfile:={}});
im({Yes});
});
case (sel2,
{ 1},
{
file:=docfile;
KAKUNIN;
docfile:=file;
im({Yes});
},
{ 2},
{
file:=docfile;
SHINKI;
docfile:=file;
im({Yes});
});
case (ok,
{ 1},
{
case (@getchar(datafile,2,2)={:\},
{No},
{footnote(ERRMSG);im({Yes})},
{Yes},
{
%datatype @case (dtype,
{ 1},{im({BIN})},
{ 2},{im({TXT})},
{ 3},{im({NAP})},
,{im({BIN})}
);
case (forum<>{} && libno<>{} && dataname<>{}
&& keyword<>{} && @filechk(datafile),
{Yes},
{ write(TEMP2|{_mopres.wrk},@RESERV|
{forumlib=}|forum|{;}|
{libno=}|libno|{;}|
{dataname=}|dataname|{;}|
{keyword=}|keyword|{;}|
{datatype=}|datatype|{;}|
{datafile=}|datafile|{;}|
{docfile=}|docfile|{;}|{\n});
im({No});
},
{No},{im({Yes})})
});
},
{ 2},{im({No})}
)})};
/* シスオペ宛メールアップ制御文作成 */
%AUTOsmail{
footnote({シスオペ宛メール送信制御文作成});
var forum[8];var title[40];var file[64];var ok[2];
loop ({
SNDMSG({nyuryo_f.snd});
%a @plane( {cシスオペ宛メール送信\n}|
{t ネット名 /xxx\n}|
{t タイトル /xxxxxxxxxxxxxxxxxxxx}|
{xxxxxxxxxxxxxxxxxxxx\n}|
{t 送信ファイル /\n}|
{s / ファイル一覧 / 新規作成 \n}|
{r 送信予約 /予約 /保留\n}|
{s / 登録 / 取消 \n},
NET,title,file,1);
forum:= @head(@getline(a,1,1),{\n});
title:= @head(@getline(a,2,1),{\n});
file:= @head(@getline(a,3,1),{\n});
%sel @head(@getline(a,4,1),{\n});
%reserv @head(@getline(a,5,1),{\n});
ok:= @head(@getline(a,6,1),{\n});
im({No}); /* 右クリック時のデフォルト値 */
case (sel,
{ 1},{KAKUNIN;im({Yes})},
{ 2},{SHINKI;im({Yes})}
);
case (ok,
{ 1},
{case (title={}||file={},
{No},
{
case (@getchar(file,2,2)={:\},
{No},
{footnote(ERRMSG);im({Yes})},
{Yes},
{write(TEMP2|{_mopres.wrk},@RESERV|
{sysmail=}|forum|{;}|{file=}|file|
{;}|{title=}|title|CRLF);
im({No});
});
},
{Yes},
{
im({Yes})
});
},
{ 2},{im({No})}
)})};
/* プロフィール情報制御文作成 */
%AUTOprof{
footnote({プロフィール情報登録制御文作成});
var file[64];var ok[2];
loop ({
%a @plane( {cプロフィール情報登録\n}|
{t 登録ファイル /\n}|
{s / ファイル一覧/ 新規作成 \n}|
{r 送信予約 /予約 /保留\n}|
{s / 登録 / 取消 \n},
file,1);
file:= @head(@getline(a,1,1),{\n});
%sel @head(@getline(a,2,1),{\n});
%reserv @head(@getline(a,3,1),{\n});
ok:= @head(@getline(a,4,1),{\n});
im({No}); /* 右クリック時のデフォルト値 */
case (sel,
{ 1},{KAKUNIN;im({Yes})},
{ 2},{SHINKI;im({Yes})}
);
case (ok,
{ 1},
{
case (@getchar(file,2,2)={:\},
{No},{footnote(ERRMSG);im({Yes})},
{Yes},
{
write(TEMP2|{_mopres.wrk},@RESERV|
{profile=}|{;}|{file=}|file|{;\n});
im({No})})},
{ 2},{im({No})}
)})};
/* メモ書き込み制御文作成 */
%AUTOwho{footnote({メモ書き込み制御文作成;「WHOコマンドで出てくるメモです」});
var file[64];var memoK[32];var ok[2];
loop ({%a @plane( {cメモ書き込み情報登録\n}|
{t 登録ファイル /\n}|
{s / ファイル一覧/ 新規作成 \n}|
{r 送信予約 /予約 /保留\n}|
{s / 登録 / 取消 \n},
file,1 );
file:= @head(@getline(a,1,1),{\n});
%sel @head(@getline(a,2,1),{\n});
%reserv @head(@getline(a,3,1),{\n});
ok:= @head(@getline(a,4,1),{\n});
im({No}); /* 右クリック時のデフォルト値 */
case (sel,
{ 1},{KAKUNIN;im({Yes})},
{ 2},{MEMOset;im({Yes})});
case (ok,
{ 1},
{
case (@getchar(file,2,2)={:\},
{No},{footnote(ERRMSG);im({Yes})},
{Yes},
{
write(TEMP2|{_mopres.wrk},@RESERV|
{whomemo=}|{;}|{file=}|file|{;\n});
im({No})})},
{ 2},{im({No})}
)})};
/* アップロード制御ファイル更新 */
%UPDATE1{
var LineNo [6];
LineNo:=@xlinenum;
%MaxLine@nolmemo(memono);
case (LineNo>MaxLine,
{Yes},{LineNo:=MaxLine},
{No},{case(LineNo<1,{Yes},{LineNo:=1})}
);
%upld @memo(memono,LineNo,1);
case (@head(upld,{=}),
{sysmail}, {UPDATE(@UPDsmail(upld))},
{保留;sysmail}, {UPDATE(@UPDsmail(upld))},
{benon}, {UPDATE(@UPDbenon(upld))},
{保留;benon}, {UPDATE(@UPDbenon(upld))},
{mail}, {UPDATE(@UPDmail(upld))},
{保留;mail}, {UPDATE(@UPDmail(upld))},
{forum}, {UPDATE(@UPDforum(upld))},
{保留;forum}, {UPDATE(@UPDforum(upld))},
{forumlib}, {UPDATE(@UPDdlib(upld))},
{保留;forumlib},{UPDATE(@UPDdlib(upld))},
{profile}, {UPDATE(@UPDprof(upld))},
{保留;profile}, {UPDATE(@UPDprof(upld))},
{whomemo}, {UPDATE(@UPDmemo(upld))},
{保留;whomemo}, {UPDATE(@UPDmemo(upld))},
, {CloseAllMemo}
);
};
%UPDATE {
[new]
case (new,
upld,{CloseAllMemo}, /* 変更無し */
{}, /* 削除 */
{CloseAllMemo;
mclear(memono);
case(LineNo>1,{Yes},
{madd(memono,@read(TEMP2|{_mopres.wrk},1,LineNo-1))});
case(LineNo<MaxLine,{Yes},
{madd(memono,@read(TEMP2|{_mopres.wrk},LineNo+1))});
mwrite(TEMP2|{_mopres.wrk},memono);
},
, /* 変更あり */
{
CloseAllMemo;
mclear(memono);
case (LineNo>1,
{Yes},
{madd(memono,@read(TEMP2|{_mopres.wrk},1,LineNo-1))}
);
madd(memono,new);
case (LineNo<MaxLine,
{Yes},
{madd(memono,@read(TEMP2|{_mopres.wrk},LineNo+1))}
);
mwrite(TEMP2|{_mopres.wrk},memono);
})};
/* テキストメールアップ制御文更新 */
%UPDbenon{[upld]
footnote({爆裂自動トーク送信制御文更新});
var benon[80];
var file[64];
var ok[2];
var reserv[2];
reserv:=@case (@head(upld,{;}),
{保留},{im({ 2})},
,{im({ 1})}
);
benon:= @head(@body(upld,{benon=},{;}),{;});
file:= @head(@body(upld,{file=},{;}),{;});
loop ({SNDMSG({nyuryo_f.snd});
%a @plane( {c爆裂自動トーク送信\n}|
{tトーク先ID /\n}|
{s / 検索 \n}|
{t 爆裂ファイル /\n}|
{s / ファイル一覧 }|
{/ 新規作成 / 内容更新\n}|
{r 送信予約 /予約 /保留\n}|
{s / 登録 / 削除/ 取消 \n},
benon,file,reserv);
benon:= @head(@getline(a,1,1),{\n});
%search @head(@getline(a,2,1),{\n});
file:= @head(@getline(a,3,1),{\n});
%sel @head(@getline(a,4,1),{\n});
reserv:=@head(@getline(a,5,1),{\n});
ok:= @head(@getline(a,6,1),{\n});
case (search,
{ 1},
{
%id1 @HDsearch;
case (id1<>{},
{Yes},
{
case (benon<>{},
{Yes},{benon:=benon|{,}|id1},
{No},{benon:=id1}
);
});
im({Yes})}
);
case (sel,{ 1},{file:=@FILEsel1;im({Yes})},
{ 2},{SHINKI;im({Yes})},
{ 3},{KOUSHIN(file,memono+1);im({Yes})});
case (ok,{ 1},{
case (@getchar(file,2,2)={:\},
{No},{footnote(ERRMSG);im({Yes})},
{Yes},
{im(@RESERV|{benon=}|benon|{;}|
{file=}|file|{;\n})}
);
},
{ 2},{im({})},{ 3},{im(upld)},
,{case(search={ 0}&&sel={ 0},{Yes},{im(upld)})}
)})};
%UPDmail{[upld]
footnote({テキストメール送信制御文更新});
var mail[40];
var title[50];
var file[64];
var ok[2];
var reserv[2];
reserv:=@case (@head(upld,{;}),
{保留},{im({ 2})},
,{im({ 1})}
);
mail:= @head(@body(upld,{mail=},{;}),{;});
title:= @body(upld,{title=},{\n});
file:= @head(@body(upld,{file=},{;}),{;});
loop ({SNDMSG({nyuryo_f.snd});
%a @plane( {cテキストメール送信\n}|
{t 送信先ID /\n}|
{s / 検索 \n}|
{t タイトル /xxxxxxxxxxxxxxxxxxxx}|
{xxxxxxxxxxxxxxxxxxxx\n}|
{t 送信ファイル /\n}|
{s / ファイル一覧 }|
{/ 新規作成 / 内容更新 \n}|
{r 送信予約 /予約 /保留\n}|
{s / 登録 / 削除 / 取消 \n},
mail,title,file,reserv);
mail:= @head(@getline(a,1,1),{\n});
%search @head(@getline(a,2,1),{\n});
title:= @head(@getline(a,3,1),{\n});
file:= @head(@getline(a,4,1),{\n});
%sel @head(@getline(a,5,1),{\n});
reserv:=@head(@getline(a,6,1),{\n});
ok:= @head(@getline(a,7,1),{\n});
case (search,
{ 1},
{
%id1 @IDsearch;
case (id1<>{},
{Yes},
{
case (mail<>{},
{Yes},{mail:=mail|{,}|id1},
{No},{mail:=id1}
);
});
im({Yes})}
);
case (sel,{ 1},{file:=@FILEsel1;im({Yes})},
{ 2},{SHINKI;im({Yes})},
{ 3},{KOUSHIN(file,memono+1);im({Yes})});
case (ok,{ 1},{
case (@getchar(file,2,2)={:\},
{No},{footnote(ERRMSG);im({Yes})},
{Yes},
{im(@RESERV|{mail=}|mail|{;}|{date=;}|
{file=}|file|{;}|{title=}|title|CRLF)}
);
},
{ 2},{im({})},{ 3},{im(upld)},
,{case(search={ 0}&&sel={ 0},{Yes},{im(upld)})}
)})};
/* ボード制御文更新 */
%UPDforum{
[upld]
footnote({ボードへの発言制御文更新});
var forum[8];
var mes[3];
var reply[4];
var title[44];
var file[64];
var ok[2];
var reserv[2];
reserv:=@case (@head(upld,{;}),
{保留},{im({ 2})},
,{im({ 1})}
);
forum:= @head(@body(upld,{forum=},{;}),{;});
mes:= @head(@body(upld,{mes=},{;}),{;});
reply:= @head(@body(upld,{reply=},{;}),{;});
title:= @body(upld,{title=},{\n});
file:= @head(@body(upld,{file=},{;}),{;});
loop ({SNDMSG({nyuryo_f.snd});
%a @plane( {cボードへの発言\n}|
{t ネット名 /xxxxxx\n}|
{cSIGボードの場合はネット名の代わりに\n}|
{cパスワードを入力して下さい\n}|
{t ボード番号 /xxx\n}|
{tコメント元番号/xxxx\n}|
{t タイトル /xxxxxxxxxxxxxxxxxxxx}|
{xxxxxxxxxxxxxxxxxxxx\n}|
{t 発言ファイル /\n}|
{s / ファイル一覧 /}|
{ 新規作成 / 内容更新 \n}|
{r 送信予約 /予約 /保留\n}|
{s / 登録 / 削除 / 取消 \n},
forum,mes,reply,title,file,reserv);
forum:= @head(@getline(a,1,1),{\n});
mes:= @head(@getline(a,2,1),{\n});
reply:= @head(@getline(a,3,1),{\n});
title:= @head(@getline(a,4,1),{\n});
file:= @head(@getline(a,5,1),{\n});
%sel @head(@getline(a,6,1),{\n});
reserv:=@head(@getline(a,7,1),{\n});
ok:= @head(@getline(a,8,1),{\n});
case (sel,
{ 1},{file:=@FILEsel1;im({Yes})},
{ 2},{SHINKI;im({Yes})},
{ 3},{KOUSHIN(file,memono+1);im({Yes})});
case (ok,{ 1},{
case (@getchar(file,2,2)={:\},
{No},{footnote(ERRMSG);im({Yes})},
{Yes},
{im(@RESERV|{forum=}|forum|{;}|{mes=}|
mes|{;}|{reply=}|reply|{;}|{file=}|
file|{;}|{title=}|title|CRLF)}
)},
{ 2},{im({})},{ 3},{im(upld)},
,{case(sel={ 0},{Yes},{im(upld)})}
)})};
/* データライブラリ制御文更新 */
%UPDdlib{[upld]
footnote({データライブラリへの登録制御文更新});
var forum[12];
var libno[3];
var dataname[40];
var keyword[80];
var datatype[3];
var datafile[64];
var docfile[64];
var ok[2];
var file[64];
var dtype[2];
var reserv[2];
reserv:=@case (@head(upld,{;}),
{保留},{im({ 2})},
,{im({ 1})}
);
forum:= @tail(upld,{forumlib=},{;});
libno:= @tail(upld,{libno=},{;});
dataname:= @tail(upld,{dataname=},{;});
keyword:= @tail(upld,{keyword=},{;});
datatype:= @tail(upld,{datatype=},{;});
dtype:= @case(datatype, {BIN},{im({ 1})},{bin},{im({ 1})},
{TXT},{im({ 2})},{txt},{im({ 2})},
{NAP},{im({ 3})},{nap},{im({NAP})},
,{im({ 1})});
datafile:= @tail(upld,{datafile=},{;});
docfile:= @tail(upld,{docfile=},{;});
loop ({SNDMSG({nyuryo_f.snd});
%a @plane( {cデータライブラリへの登録\n}|
{t ネット名 /xxxxxxxx\n}|
{cSIGボードの場合はネット名の代わりに\n}|
{cパスワードを入力して下さい\n}|
{tライブラリ番号/xxx\n}|
{t データ名 /xxxxxxxxxxxx\n}|
{t コメント /\n}|
{r データタイプ /バイナリ/テキスト/NAPLPS\n}|
{tデータファイル/\n}|
{s ファイル一覧/ 選択 \n}|
{t 概要ファイル /\n}|
{s ファイル一覧/ 選択 \n}|
{r 送信予約 /予約 /保留\n}|
{s / 登録 / 削除 / 取消 \n},
forum,libno,dataname,keyword,dtype,
datafile,docfile,reserv);
forum:= @head(@getline(a,1,1),{\n});
libno:= @head(@getline(a,2,1),{\n});
dataname:= @head(@getline(a,3,1),{\n});
keyword:= @head(@getline(a,4,1),{\n});
dtype:= @head(@getline(a,5,1),{\n});
datafile:= @head(@getline(a,6,1),{\n});
%sel1 @head(@getline(a,7,1),{\n});
docfile:= @head(@getline(a,8,1),{\n});
%sel2 @head(@getline(a,9,1),{\n});
reserv:= @head(@getline(a,10,1),{\n});
ok:= @head(@getline(a,11,1),{\n});
case (sel1,
{ 1},
{
file:=datafile;
case (dtype,
{ 2},{KAKUNIN},
{ 3},{KAKUNIN2},
,{file:=@FILEsel1}
);
datafile:=file;
im({Yes})
});
case (sel2,
{ 1},
{
file:=docfile;
KAKUNIN;
docfile:=file;
im({Yes})
},
{ 2},
{
file:=docfile;
SHINKI;
docfile:=file;
im({Yes});
});
case (ok,{ 1},
{case(@getchar(datafile,2,2)={:\},
{No},{footnote(ERRMSG);im({Yes})},
{Yes},
{
datatype:=
@case(dtype,{ 1},{im({BIN})},
{ 2},{im({TXT})},
{ 3},{im({NAP})},
,{im({BIN})});
im(@RESERV|{forumlib=}|forum|{;}|
{libno=}|libno|{;}|
{dataname=}|dataname|{;}|
{keyword=}|keyword|{;}|
{datatype=}|datatype|{;}|
{datafile=}|datafile|{;}|
{docfile=}|docfile|{;\n})}
)},
{ 2},{im({})},{ 3},{im(upld)},
,{case(sel1={ 0}&&sel2={ 0},{Yes},{im(upld)})}
)})};
/* シスオペ宛メールアップ制御文更新 */
%UPDsmail{[upld]
footnote({シスオペ宛メール送信制御文更新});
var forum[8];
var title[40];
var file[64];
var ok[2];
var reserv[2];
reserv:=@case (@head(upld,{;}),
{保留},{im({ 2})},
,{im({ 1})}
);
forum:= @head(@body(upld,{sysmail=},{;}),{;});
title:= @body(upld,{title=},{\n});
file:= @head(@body(upld,{file=},{;}),{;});
loop ({SNDMSG({nyuryo_f.snd});
%a @plane( {cシスオペ宛メール送信\n}|
{t ネット名 /xxx\n}|
{t タイトル /xxxxxxxxxxxxxxxxxxxx}|
{xxxxxxxxxxxxxxxxxxxx\n}|
{t 送信ファイル /\n}|
{s / ファイル一覧 /}|
{ 新規作成 / 内容更新 \n}|
{r 送信予約 /予約 /保留\n}|
{s / 登録 / 削除 / 取消 \n},
NET,title,file,reserv);
forum:= @head(@getline(a,1,1),{\n});
title:= @head(@getline(a,2,1),{\n});
file:= @head(@getline(a,3,1),{\n});
%sel @head(@getline(a,4,1),{\n});
reserv:=@head(@getline(a,5,1),{\n});
ok:= @head(@getline(a,6,1),{\n});
case (sel,{ 1},{file:=@FILEsel1;im({Yes})},
{ 2},{SHINKI;im({Yes})},
{ 3},{KOUSHIN(file,memono+1);im({Yes})});
case (ok,{ 1},{
case (@getchar(file,2,2)={:\},
{No},{footnote(ERRMSG);im({Yes})},
{Yes},
{im({@RESERV|sysmail=}|forum|{;}|
{file=}|file|{;}|{title=}|title|CRLF)}
)},
{ 2},{im({})},{ 3},{im(upld)},
,{case(sel={ 0},{Yes},{im(upld)})}
)})};
/* プロフィール情報書き込み制御文更新 */
%UPDprof{[upld]
footnote({プロフィール情報登録制御文更新});
var file [64]; var ok [2];
var reserv [2];
reserv:=@case (@head(upld,{;}),
{保留},{im({ 2})},
,{im({ 1})}
);
file:= @tail(upld,{file=},{;});
loop ({SNDMSG({nyuryo_f.snd});
%a @plane( {cプロフィール情報登録\n}|
{t 登録ファイル /\n}|
{s / ファイル一覧 /}|
{ 新規作成 / 内容更新 \n}|
{r 送信予約 /予約 /保留\n}|
{s / 登録 / 削除 / 取消 \n},
file,reserv);
file:= @head(@getline(a,1,1),{\n});
%sel @head(@getline(a,2,1),{\n});
reserv:=@head(@getline(a,3,1),{\n});
ok:= @head(@getline(a,4,1),{\n});
case (sel,{ 1},{file:=@FILEsel1;im({Yes})},
{ 2},{SHINKI;im({Yes})},
{ 3},{KOUSHIN(file,memono+1);im({Yes})});
case (ok,{ 1},{case (@getchar(file,2,2)={:\},
{No},{footnote(ERRMSG);im({Yes})},
{Yes},
{im(@RESERV|{profile=}|{;}|{file=}|file|{;\n})}
)},
{ 2},{im({})},{ 3},{im(upld)},
,{case(sel={ 0},{Yes},{im(upld)})}
)})};
/* メモ書き込み制御文更新 */
%UPDmemo{[upld]
footnote({メモ書き込み情報登録制御文更新});
var file[40];var memoK[32];var ok[2];
var reserv [2];
reserv:=@case (@head(upld,{;}),
{保留},{im({ 2})},
,{im({ 1})}
);
file:= @tail(upld,{file=},{;});
loop ({%a @plane( {cメモ書き込み情報登録\n}|
{t 登録ファイル /\n}|
{s / ファイル一覧/}|
{ 新規作成/ 内容更新 \n}|
{r 送信予約 /予約 /保留\n}|
{s / 登録 / 削除/ 取消 \n},
file,reserv);
file:= @head(@getline(a,1,1),{\n});
%sel @head(@getline(a,2,1),{\n});
reserv:=@head(@getline(a,3,1),{\n});
ok:= @head(@getline(a,4,1),{\n});
case (sel,{ 1},{file:=@FILEsel1;im({Yes})},
{ 2},{MEMOset;im({Yes})},
{ 3},{MEMOrset(file);im({Yes})});
case (ok,{ 1},{case (@getchar(file,2,2)={:\},
{No},{footnote(ERRMSG);im({Yes})},
{Yes},
{im(@RESERV|{whomemo=}|{;}|{file=}|file|{;\n})}
)},
{ 2},{im({})},{ 3},{im(upld)},
,{case(sel={ 0},{Yes},{im(upld)})}
)})};
/* アップロード予約を保留する */
%WAIT1 {
var LineNo [6];
LineNo:=@xlinenum;
%MaxLine@nolmemo(memono);
case (LineNo>MaxLine,
{Yes},
{LineNo:=MaxLine},
{No},
{case(LineNo<1,{Yes},{LineNo:=1})}
);
%line1 @memo(memono,LineNo,1);
case (@getchar(line1,1,5)={保留;}||line1={},
{Yes}, /* 変更無し */
{CloseAllMemo},
{No}, /* 変更あり */
{
CloseAllMemo;
mclear(memono);
case(LineNo>1,{Yes},
{madd(memono,@read(TEMP2|{_mopres.wrk},1,LineNo-1))});
madd(memono,{保留;}|line1);
case(LineNo<MaxLine,{Yes},
{madd(memono,@read(TEMP2|{_mopres.wrk},LineNo+1))});
mwrite(TEMP2|{_mopres.wrk},memono);
});
};
/* アップロード保留を解除(予約)する */
%RESERVE1{
var LineNo [6];
LineNo:=@xlinenum;
%MaxLine@nolmemo(memono);
case (LineNo>MaxLine,
{Yes},
{LineNo:=MaxLine},
{No},
{case(LineNo<1,{Yes},{LineNo:=1})}
);
%line1 @memo(memono,LineNo,1);
case (@getchar(line1,1,5),
{保留;}, /* 変更あり */
{
CloseAllMemo;
mclear(memono);
case(LineNo>1,{Yes},
{madd(memono,@read(TEMP2|{_mopres.wrk},1,LineNo-1))});
madd(memono,@getchar(line1,6));
case(LineNo<MaxLine,{Yes},
{madd(memono,@read(TEMP2|{_mopres.wrk},LineNo+1))});
mwrite(TEMP2|{_mopres.wrk},memono);
},
,{CloseAllMemo} /* 変更なし */
);
};
/* アップロード制御ファイル作成メインループ */
%SETUP {[memono]
CloseAllMemo;
delfile(TEMP2|{_mopres.wrk});
copyfile(UP2|{_mopres.ctl},TEMP2|{_mopres.wrk});
madd(memono,{\n});mclear(memono);
case (@filechk(TEMP2|{_mopres.wrk}),
{Yes},{mread(TEMP2|{_mopres.wrk},memono)});
loop ({
mopen(memono,0,21,639,459,{r});
footnote({終了 取消 変更保留予約追加 読込編集},
{b});
waitx();
case (@xtype,
101,{
delfile(UP2|{_mopres.ctl});
copyfile(TEMP2|{_mopres.wrk},UP2|{_mopres.ctl});
im({No})},
201,
{
delfile(UP2|{_mopres.ctl});
copyfile(TEMP2|{_mopres.wrk},UP2|{_mopres.ctl});
im({No})
},
103,{im({No})}, 203,{im({No})},
106,{UPDATE1;im({Yes})}, 206,{UPDATE1;im({Yes})},
107,{WAIT1;im({Yes})}, 207,{WAIT1;im({Yes})},
108,{RESERVE1;im({Yes})},208,{RESERVE1;im({Yes})},
109,{SETUP1;im({Yes})}, 209,{SETUP1;im({Yes})},
111,{FILECOPY;im({Yes})},211,{FILECOPY;im({Yes})},
112,{HANDEDIT;im({Yes})},212,{HANDEDIT;im({Yes})},
memono,{UPDATE1;im({Yes})},
,{CloseAllMemo;im({Yes})});
});
/* ログ参照に使用したメモの削除処理 */
loop({case(@mcheck>=memono,{Yes},{mclose(3)});im(@mcheck>=memono)});
CloseAllMemo;
loop ({case (@mlast>=memono,
{Yes},{case(@mcheck!=@mlast,{Yes},{mopen(@mlast)});
mclose(3);im({Yes})},
{No},{im({No})});
});setcdir(CDIR)};
/* アップロード制御ファイル作成処理 */
%ERRMSG {ファイル名はドライブからのフルパスで指定してください};
footnote({アップロード制御ファイルのセットアップを行います});
%memono @mlast+1;
case (memono>8,{No},{SETUP(memono)},{Yes},{SNDMSG ({kaknin_f.snd});
select ({メモ8-9の内容が消去されます よろしいですか?},
Wtime4,,{ は い },{SETUP(8)},{ いいえ },)});